package cn.edu.ctbu.api01.repository;
import cn.edu.ctbu.api01.domain.Student;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
public interface StudentRepository extends JpaRepository<Student,Integer> {

    /**
     * 支持分页找出所有学生
     * @param pageable
     * @return
     */
    Page<Student> findAll(Pageable pageable);
    /**
     * 按姓名查询
     * @param name
     * @return
     */
    List<Student> findByNameLike(String name);
    /**
     * 按学号查询
     * @param no
     * @return
     */
    List<Student> findByNo(String no);
    /**
     * 按姓名查询
     * @param name
     * @return
     */
    List<Student> findByNameContaining(String name);
    /**
     * 按性别查询
     * @param sex
     * @return
     */
    List<Student> findBySex(Integer sex);
    /**
     * 按年龄段查询
     * @param minAge
     * @param maxAge
     * @return
     */
    List<Student> findByAgeBetween(int minAge, int maxAge);
    /**
     * 按分数段查询
     * @param minScore
     * @param maxScore
     * @return
     */
    List<Student> findByScoreBetween(int minScore, int maxScore);

    /**
     * 找出所有符合姓名和密码的用户
     * @param name
     * @param password
     * @return
     */
    List<Student> findByNameAndPassword(String name, String password);
}
